package com.zhentao.service;

import com.zhentao.dto.FaceLoginDTO;
import com.zhentao.dto.FaceRegisterDTO;
import com.zhentao.dto.FaceRecognitionDTO;
import com.zhentao.pojo.UserFaceInfo;
import com.zhentao.vo.FaceLoginVO;
import com.zhentao.vo.FaceRegisterVO;
import com.zhentao.vo.FaceRecognitionVO;
import com.baomidou.mybatisplus.extension.service.IService;

/**
* @author Administrator
* @description 针对表【user_face_info】的数据库操作Service
* @createDate 2025-09-02 15:19:14
*/
public interface UserFaceInfoService extends IService<UserFaceInfo> {

    /**
     * 人脸注册
     * 
     * @param registerDTO 注册信息
     * @return 注册结果
     */
    FaceRegisterVO faceRegister(FaceRegisterDTO registerDTO);

    /**
     * 人脸登录
     * 
     * @param loginDTO 登录信息
     * @return 登录结果
     */
    FaceLoginVO faceLogin(FaceLoginDTO loginDTO);

    /**
     * 根据人脸ID查询用户信息
     * 
     * @param faceId 人脸ID
     * @return 用户信息
     */
    UserFaceInfo findByFaceId(String faceId);

    /**
     * 根据姓名查询用户信息
     * 
     * @param name 姓名
     * @return 用户信息
     */
    UserFaceInfo findByName(String name);

    /**
     * 统一人脸识别（自动判断登录或注册）
     * 
     * @param recognitionDTO 人脸识别信息
     * @return 识别结果
     */
    FaceRecognitionVO faceRecognition(FaceRecognitionDTO recognitionDTO);

    /**
     * 删除用户（包含图片）
     * 
     * @param id 用户ID
     * @return 删除结果
     */
    boolean deleteUser(Integer id);
}
